package ve.lm.hrms_cy.Entity;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonCreator;
import com.fasterxml.jackson.annotation.JsonProperty;

@TableName("salary")
public class Salary {

    private Long id;

    @TableField("employeeId")
    private Integer employeeId;

    private String department;

    @TableField("phoneNumber")
    private String phoneNumber;
    @TableField("lateDeduction")
    private Integer lateDeduction;
    @TableField("earlyLeaveDeduction")
    private Integer earlyLeaveDeduction;
    @TableField("absenteeismDeduction")
    private Integer absenteeismDeduction;
    @TableField("publicFund")
    private Integer publicFund;
    @TableField("socialSecurity")
    private Integer socialSecurity;
    @TableField("basicWage")
    private Integer basicWage;
    @TableField("callBackPay")
    private Integer callBackPay;


    private String status;

    public Salary() {}

    @JsonCreator
    public Salary(
            @JsonProperty("employeeId") Integer employeeId,
            @JsonProperty("department") String department,

            @JsonProperty("lateDeduction") Integer lateDeduction,
            @JsonProperty("earlyLeaveDeduction") Integer earlyLeaveDeduction,
            @JsonProperty("absenteeismDeduction") Integer absenteeismDeduction,
            @JsonProperty("publicFund") Integer publicFund,
            @JsonProperty("socialSecurity") Integer socialSecurity,
            @JsonProperty("basicWage") Integer basicWage,
            @JsonProperty("callBackPay") Integer callBackPay,
            @JsonProperty("status") String status
    ) {
        this.employeeId = employeeId;
        this.department=department;
        this.lateDeduction = lateDeduction;
        this.earlyLeaveDeduction = earlyLeaveDeduction;
        this.absenteeismDeduction = absenteeismDeduction;
        this.publicFund = publicFund;
        this.socialSecurity = socialSecurity;
        this.basicWage = basicWage;
        this.callBackPay = callBackPay;
        this.status = status;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Integer getEmployeeId() {
        return employeeId;
    }

    public void setEmployeeId(Integer employeeId) {
        this.employeeId = employeeId;
    }

    public String getDepartment() {
        return department;
    }

    public void setDepartment(String department) {
        this.department = department;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public Integer getLateDeduction() {
        return lateDeduction;
    }

    public void setLateDeduction(Integer lateDeduction) {
        this.lateDeduction = lateDeduction;
    }

    public Integer getEarlyLeaveDeduction() {
        return earlyLeaveDeduction;
    }

    public void setEarlyLeaveDeduction(Integer earlyLeaveDeduction) {
        this.earlyLeaveDeduction = earlyLeaveDeduction;
    }

    public Integer getAbsenteeismDeduction() {
        return absenteeismDeduction;
    }

    public void setAbsenteeismDeduction(Integer absenteeismDeduction) {
        this.absenteeismDeduction = absenteeismDeduction;
    }

    public Integer getPublicFund() {
        return publicFund;
    }

    public void setPublicFund(Integer publicFund) {
        this.publicFund = publicFund;
    }

    public Integer getSocialSecurity() {
        return socialSecurity;
    }

    public void setSocialSecurity(Integer socialSecurity) {
        this.socialSecurity = socialSecurity;
    }

    public Integer getBasicWage() {
        return basicWage;
    }

    public void setBasicWage(Integer basicWage) {
        this.basicWage = basicWage;
    }

    public Integer getCallBackPay() {
        return callBackPay;
    }

    public void setCallBackPay(Integer callBackPay) {
        this.callBackPay = callBackPay;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }
}
